package Comun;


import java.util.Timer;
import java.util.TimerTask;


public class EfectoLateral {
    private Comun.PanelRoundTranslucido frame1;
    private Comun.PanelRoundTranslucido referencia;
   
    Timer timer;
    private int x;
    private int y;
    private int fin;


    public void abrir(){
        frame1.setLocation(frame1.getParent().getLocation());
        frame1.setVisible(true);
       // referencia.toFront();
        x=frame1.getX();
        y=frame1.getY();
        fin=x+getReferencia().getWidth();
        timer=new Timer();
        timer.schedule(new tick(), 0, 18);
        frame1.getParent().repaint();
    }

    /**
     * @return the referencia
     */
    public Comun.PanelRoundTranslucido getReferencia() {
        return referencia;
    }

    /**
     * @param referencia the referencia to set
     */
    public void setReferencia(Comun.PanelRoundTranslucido referencia) {
        this.referencia = referencia;
    }
    
    class tick extends TimerTask{
        @Override
        public void run() {
            if(x>fin){
            timer.cancel();
            }else{
             x+=10;
            frame1.setLocation(x, y);
            
            }
        }
    }

    public void cerrar(){
        timer=new Timer();
          //referencia.toFront();
          //frame1.toBack();
          x=frame1.getX();
          y=frame1.getY();
          fin=getReferencia().getX();
          timer.schedule(new tick2(), 0, 18);
    }
       class tick2 extends TimerTask{
        @Override
        public void run() {
             x-=10;
            //System.out.println("valor de refeencia"+fin+"valor de la pos frame 1 "+x);
            if(fin>x){
            frame1.setVisible(false);
            timer.cancel();
            frame1.setLocation(getReferencia().getX(), getReferencia().getY());
            }else{
            frame1.setLocation(x, y);
            }


        }
    }



    /**
     * @return the frame1
     */
    public Comun.PanelRoundTranslucido getFrame1() {
        return frame1;
    }

    /**
     * @param frame1 the frame1 to set
     */
    public void setFrame1(Comun.PanelRoundTranslucido frame1) {
        this.frame1 = frame1;
    }

 
   
}
